//屏蔽console.log打印语句
//console.log = ()=>{}

//格式化时间
Date.prototype.format = function(fmt) {
	var o = {
		"M+": this.getMonth() + 1, //月份 
		"d+": this.getDate(), //日 
		"h+": this.getHours(), //小时 
		"m+": this.getMinutes(), //分 
		"s+": this.getSeconds(), //秒 
		"q+": Math.floor((this.getMonth() + 3) / 3), //季度 
		"S": this.getMilliseconds() //毫秒 
	};
	if(/(y+)/.test(fmt)) {
		fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
	}
	for(var k in o) {
		if(new RegExp("(" + k + ")").test(fmt)) {
			fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
		}
	}
	return fmt;
}

//重写alert
window.alert = function(msg, callback, title) {
	if(!title) {
		title = '提示';
	}
	var dialogHTML = '<div id="selfAlert" class="modal fade" tabindex="-1" aria-hidden="true">';
	dialogHTML += '<div class="modal-dialog">';
	dialogHTML += '<div class="modal-content">';
	dialogHTML += '<div class="modal-header">';
	dialogHTML += '<button type="button" class="close" data-dismiss="modal" aria-label="Close">';
	dialogHTML += '<span aria-hidden="true">&times;</span>';
	dialogHTML += '</button>';
	dialogHTML += '<h4 class="modal-title">' + title + '</h4>';
	dialogHTML += '</div>';
	dialogHTML += '<div class="modal-body">';
	dialogHTML += msg;
	dialogHTML += '</div>';
	dialogHTML += '<div class="modal-footer">';
	dialogHTML += '<button type="button" class="btn btn-default" data-dismiss="modal">确定</button>';
	dialogHTML += '</div>';
	dialogHTML += '</div>';
	dialogHTML += '</div>';
	dialogHTML += '</div>';

	if($('#selfAlert').length <= 0) {
		$('body').append(dialogHTML);
	}

	$('#selfAlert').on('hidden.bs.modal', function(e) {
		$('#selfAlert').remove();
		//回调函数
		if(typeof callback == 'function') {
			callback();
		}
	});

	setTimeout(function() {
		$('#selfAlert').modal('show');
	}, 320);
}

/**
 * [fileCountCheck 上传文件数量检测]
 * @param  {[Object]} filesObj [文件对象]
 * @param  {[Number]} maxFileNum  [文件数量上限]
 * @return {[Boolean]}          [真假]
 */
function fileCountCheck(filesObj, maxFileNum) {
	if(window.File && window.FileList) {
		var fileCount = filesObj.files.length;
		if(fileCount > maxFileNum) {
			// 不符合数量的处理
			return false;
		} else {
			// 符合数量的处理
			return true;
		}
	} else {
		// 不支持FileAPI
		window.alert('抱歉，你的浏览器不支持FileAPI，请升级浏览器！');
		return false;
	}
}

//获取域名+端口号的根URL
function getRootURL() {
	//return window.location.protocol+'//'+window.location.host+'/rgxk/';
	return 'http://localhost:8080/zhxx/';
	//return 'http://www.anneli.cn/zhxx/';
}

//返回头像资源路径
function getSourceURL() {
	return 'http://localhost:8080/zhxx/source/imgs/';
	//return 'http://www.anneli.cn/zhxx/source/imgs/';
}

function getSourceURLPhoto() {
	return 'http://localhost:8080/zhxx/source/photo/';
	//return 'http://www.anneli.cn/zhxx/source/photo/';
}

//参数relactivePath是相对与主机ip/域名的路径
function getFullURL(relactivePath) {
	let host = getRootURL();
	return host + relactivePath;
}

//判断连接是否通信
var isRunUrl = function(url) {
	return new Promise(function(resolve, reject) {
		// 测试链接连通性, 主要检测404错误
		// 由于AJAX通常无法区分404和跨域问题
		// 所以只能用script 或者 link标签
		// link比script更容易捕获错误
		var dom = document.createElement('link');
		dom.href = url;
		dom.rel = 'stylesheet';
		document.head.appendChild(dom);
		dom.onload = function() {
			document.head.removeChild(dom);
			resolve();
		}
		dom.onerror = reject;
	});
}

//空值显示处理
function nullMessage1(obj) {
	if(obj == null || obj === "") {
		return '本题目没有特殊说明，任何人均可报名';
	} else {
		return obj;
	}
}

//空值显示处理
function nullMessage2(obj) {
	if(obj == null || obj === "") {
		return '确认选题后，由指导老师和选题学生一起确定';
	} else {
		return obj;
	}
}

//空值显示处理
function nullMessage(obj) {
	if(obj == null || obj === "") {
		return '暂无';
	} else {
		return obj;
	}
}

//空值显示处理
function nullStr(obj) {
	if(obj == null || obj === "") {
		return '';
	} else {
		return obj;
	}
}

//获得前几年和后几年的年份
function getYearArr(start, end) {
	var yearArr = [];
	var myDate = new Date();
	nowYear = myDate.getFullYear(); //当前年
	var startYear = nowYear - start;
	var endYear = nowYear + end;

	for(var it = startYear; it <= endYear; it++) {
		yearArr.push(it);
	}
	return yearArr;
}

//把时间戳转换日期格式
function timeStamp2String(time) {
	var datetime = new Date();
	datetime.setTime(time);
	var year = datetime.getFullYear();
	var month = datetime.getMonth() + 1 < 10 ? "0" + (datetime.getMonth() + 1) : datetime.getMonth() + 1;
	var date = datetime.getDate() < 10 ? "0" + datetime.getDate() : datetime.getDate();
	var hour = datetime.getHours() < 10 ? "0" + datetime.getHours() : datetime.getHours();
	var minute = datetime.getMinutes() < 10 ? "0" + datetime.getMinutes() : datetime.getMinutes();
	var second = datetime.getSeconds() < 10 ? "0" + datetime.getSeconds() : datetime.getSeconds();
	return year + "-" + month + "-" + date + " " + hour + ":" + minute + ":" + second;
}